Today's Question:  What does your personal desk look like?        GIVE A SHOUT

SEARCH KEYWORD -- Pattern match



  A Perl Regular Expression That Matches Prime Numbers

perl -lne '(1x$_) =~ /^1?$|^(11+?)\1+$/ || print "$_ is prime"' Can you figure out how it works? I give an explanation below, but try to figure it out yourself. Here is what happens when you run it: $ perl -lne '(1x$_) =~ /^1?$|^(11+?)\1+$/ || print "$_ is prime"' 1 2 2 is prime 3 3 is prime 4 5 5 is prime 6 7 7 is prime 8 9 10 11 11 is prime Here is how it works. First, the number is converted in its unary representation by (1x$_). For example, the number 5 gets converted into 1x5, which is ...

   Perl,Regex,Regular expression,Prime number,One line     2011-12-26 08:42:00

  Five-minute Multimethods in Python

So what are multimethods? I'll give you my own definition, as I've come to understand them: a function that has multiple versions, distinguished by the type of the arguments. (Some people go beyond this and also allow versions distinguished by the value of the arguments; I'm not addressing this here.) As a very simple example, let's suppose we have a function that we want to define for two ints, two floats, or two strings. Of course, we could define it as follows: def foo(a, b): if...

   Python,Multimethod,Argument list,Version,Overloadding     2011-12-07 08:41:03

  Singleton Design Pattern in Java

Singleton is frequently used in applications where resource may be expensive to create and no instance specific state needs to be maintained. For example, when creating database connection, a singleton may be needed. Today we will share the famous Singleton design pattern in Java. 1. Definition Singleton design pattern is a design pattern that restricts the instantiation of a class to one object. It is one of the most well-known design patterns. 2. Application Singleton ...

   DESIGN PATTERN,SINGLETON,MULTITHREAD,JAVA     2020-04-11 02:16:28

  Scala, Patterns and The Perl Effect

He tried to understand that one concept for a couple of months before it made sense to him. Admittedly, partial functions are not intuitive for anyone who has been schooled in traditional programming, but still, looking at the problem he was trying to solve it seemed like James was required to expend too much effort relative to the simplicity of the problem (as he pointed out, now that he understands the concept it seems straightforward). He showed me the code, and it was basically a situa...

   Scala,Perl,Pattern,Partial function,Template     2011-12-21 09:25:41

  Overlap Detection

How does one detect when two strings overlap? In the case below, the four-letter suffix of string 1 matches the four-letter prefix of string 2. 1: "Fire at Will" 2: "William Riker is number one" Sometimes there are several matches; finding the longest is not always straight forward. 1: "Have some CoCo and CoCo" 2: "CoCo and CoCo is here." 2: "CoCo and CoCo is here." 2: "CoCo and CoCo is here." The naïve solution is to take...

   String overlap,detection,python,implementation     2012-03-05 05:05:36

  A Programming Idiom You've Never Heard Of

Here are some sequences of events: Take the rake out of the shed, use it to pile up the leaves in the backyard, then put the rake back in the shed. Fly to Seattle, see the sights, then fly home. Put the key in the door, open it, then take the key out of the door. Wake-up your phone, check the time, then put it back to sleep. See the pattern? You do something, then do something else, then you undo the first thing. Or more accurately, the last step is the inverse of the first. Once you're aware ...

   Programming,Idiom,Strange     2012-01-04 08:12:25

  Getting started with C++ TR1 regular expressions

Overview This article is written for the benefit of someone familiar with regular expressions but not with the use of regular expressions in C++ via the TR1 (C++ Standards Committee Technical Report 1) extensions. Comparisons will be made with Perl for those familiar with Perl, though no knowledge of Perl is required. The focus is not on the syntax of regular expressions per se but rather how to use regular expressions to search for patterns and make replacements. Support for TR1 ext...

   Regular expression,Replace,TR1,Extension     2011-08-14 07:25:20

  Converting Decimal Fractions to Binary

Converting Decimal Fractions to Binary In the text proper, we saw how to convert the decimal number 14.75 to a binary representation. In this instance, we \"eyeballed\" the fractional part of the binary expansion; 3/4 is obviously 1/2 + 1/4. While this worked for this particular example, we\'ll need a more systematic approach for less obvious cases. In fact, there is a simple, step-by-step method for computing the binary expansion on the right-hand side of the point. We will illustrate the metho...

   Decimal,Fractional,Binary     2011-03-19 06:45:35

  Java Doesn't Need to Be So Bad

I do a lot of Java coding and I enjoy it. I admit that there is a lot of typing, often a lot of boilerplate and getting even simple tasks done can involve too much work. Most of the tools that try to fix these problems trade one moment saved for another lost. Maven's XML based configuration file is a good example: Thank you for making my project easier to manage and I won't forget that you made me edit XML to do so. These are the things that you live with, these are the things you trade for ...

   Java,Coding,Enterprise application,Tedious     2011-12-09 07:50:20

  Speech recognition breakthrough from Microsoft

Recently, Microsoft Research published a demo video on YouTube that demonstrated simultaneously translating English speech to Chinese speech with Microsoft's new research achievement. The result is quite impressive, it has large improvement compared to previous speech recognition systems. It's a big breakthrough of speech recognition. In this demo, Microsoft Chief Research Officer Rick Rashid demonstrates a speech recognition breakthrough.First when he speaks, the screen will display what he is ...

   Speech recognition, Text to speech,Machine translation     2012-11-09 23:53:21